home *** CD-ROM | disk | FTP | other *** search
- /*
- File: MediaHandlers.h
-
- Contains: QuickTime Interfaces.
-
- Version: Technology: QuickTime 2.0
- Package: Universal Interfaces 2.0 in “MPW Latest” on ETO #17
-
- Copyright: © 1984-1995 by Apple Computer, Inc.
- All rights reserved.
-
- Bugs?: If you find a problem with this file, use the Apple Bug Reporter
- stack. Include the file and version information (from above)
- in the problem description and send to:
- Internet: apple.bugs@applelink.apple.com
- AppleLink: APPLE.BUGS
-
- */
-
- #ifndef __MEDIAHANDLERS__
- #define __MEDIAHANDLERS__
-
-
- #ifndef __MEMORY__
- #include <Memory.h>
- #endif
- /* #include <Types.h> */
- /* #include <ConditionalMacros.h> */
- /* #include <MixedMode.h> */
-
- #ifndef __IMAGECOMPRESSION__
- #include <ImageCompression.h>
- #endif
- /* #include <Quickdraw.h> */
- /* #include <QuickdrawText.h> */
- /* #include <QDOffscreen.h> */
- /* #include <Errors.h> */
- /* #include <Components.h> */
- /* #include <Windows.h> */
- /* #include <Events.h> */
- /* #include <OSUtils.h> */
- /* #include <Controls.h> */
- /* #include <Menus.h> */
- /* #include <StandardFile.h> */
- /* #include <Dialogs.h> */
- /* #include <TextEdit.h> */
- /* #include <Files.h> */
-
- #ifndef __MOVIES__
- #include <Movies.h>
- #endif
- /* #include <Aliases.h> */
- /* #include <AppleTalk.h> */
-
- #ifdef __cplusplus
- extern "C" {
- #endif
-
- #if PRAGMA_ALIGN_SUPPORTED
- #pragma options align=mac68k
- #endif
-
- #if PRAGMA_IMPORT_SUPPORTED
- #pragma import on
- #endif
-
-
- enum {
- handlerHasSpatial = 1 << 0,
- handlerCanClip = 1 << 1,
- handlerCanMatte = 1 << 2,
- handlerCanTransferMode = 1 << 3,
- handlerNeedsBuffer = 1 << 4,
- handlerNoIdle = 1 << 5,
- handlerNoScheduler = 1 << 6,
- handlerWantsTime = 1 << 7,
- handlerCGrafPortOnly = 1 << 8
- };
-
- /* media task flags */
- enum {
- mMustDraw = 1 << 3,
- mAtEnd = 1 << 4,
- mPreflightDraw = 1 << 5,
- mSyncDrawing = 1 << 6
- };
-
- /* media task result flags */
- enum {
- mDidDraw = 1 << 0,
- mNeedsToDraw = 1 << 2,
- mDrawAgain = 1 << 3,
- mPartialDraw = 1 << 4
- };
-
- enum {
- forceUpdateRedraw = 1 << 0,
- forceUpdateNewBuffer = 1 << 1
- };
-
- struct GetMovieCompleteParams {
- short version;
- Movie theMovie;
- Track theTrack;
- Media theMedia;
- TimeScale movieScale;
- TimeScale mediaScale;
- TimeValue movieDuration;
- TimeValue trackDuration;
- TimeValue mediaDuration;
- Fixed effectiveRate;
- TimeBase timeBase;
- short volume;
- Fixed width;
- Fixed height;
- MatrixRecord trackMovieMatrix;
- CGrafPtr moviePort;
- GDHandle movieGD;
- PixMapHandle trackMatte;
- };
- typedef struct GetMovieCompleteParams GetMovieCompleteParams;
-
- extern pascal ComponentResult MediaInitialize(MediaHandler mh, GetMovieCompleteParams *gmc)
- FIVEWORDINLINE(0x2F3C, 0x4, 0x501, 0x7000, 0xA82A);
- extern pascal ComponentResult MediaSetHandlerCapabilities(MediaHandler mh, long flags, long flagsMask)
- FIVEWORDINLINE(0x2F3C, 0x8, 0x502, 0x7000, 0xA82A);
- extern pascal ComponentResult MediaIdle(MediaHandler mh, TimeValue atMediaTime, long flagsIn, long *flagsOut, const TimeRecord *movieTime)
- FIVEWORDINLINE(0x2F3C, 0x10, 0x503, 0x7000, 0xA82A);
- extern pascal ComponentResult MediaGetMediaInfo(MediaHandler mh, Handle h)
- FIVEWORDINLINE(0x2F3C, 0x4, 0x504, 0x7000, 0xA82A);
- extern pascal ComponentResult MediaPutMediaInfo(MediaHandler mh, Handle h)
- FIVEWORDINLINE(0x2F3C, 0x4, 0x505, 0x7000, 0xA82A);
- extern pascal ComponentResult MediaSetActive(MediaHandler mh, Boolean enableMedia)
- FIVEWORDINLINE(0x2F3C, 0x2, 0x506, 0x7000, 0xA82A);
- extern pascal ComponentResult MediaSetRate(MediaHandler mh, Fixed rate)
- FIVEWORDINLINE(0x2F3C, 0x4, 0x507, 0x7000, 0xA82A);
- extern pascal ComponentResult MediaGGetStatus(MediaHandler mh, ComponentResult *statusErr)
- FIVEWORDINLINE(0x2F3C, 0x4, 0x508, 0x7000, 0xA82A);
- extern pascal ComponentResult MediaTrackEdited(MediaHandler mh)
- FIVEWORDINLINE(0x2F3C, 0, 0x509, 0x7000, 0xA82A);
- extern pascal ComponentResult MediaSetMediaTimeScale(MediaHandler mh, TimeScale newTimeScale)
- FIVEWORDINLINE(0x2F3C, 0x4, 0x50A, 0x7000, 0xA82A);
- extern pascal ComponentResult MediaSetMovieTimeScale(MediaHandler mh, TimeScale newTimeScale)
- FIVEWORDINLINE(0x2F3C, 0x4, 0x50B, 0x7000, 0xA82A);
- extern pascal ComponentResult MediaSetGWorld(MediaHandler mh, CGrafPtr aPort, GDHandle aGD)
- FIVEWORDINLINE(0x2F3C, 0x8, 0x50C, 0x7000, 0xA82A);
- extern pascal ComponentResult MediaSetDimensions(MediaHandler mh, Fixed width, Fixed height)
- FIVEWORDINLINE(0x2F3C, 0x8, 0x50D, 0x7000, 0xA82A);
- extern pascal ComponentResult MediaSetClip(MediaHandler mh, RgnHandle theClip)
- FIVEWORDINLINE(0x2F3C, 0x4, 0x50E, 0x7000, 0xA82A);
- extern pascal ComponentResult MediaSetMatrix(MediaHandler mh, MatrixRecord *trackMovieMatrix)
- FIVEWORDINLINE(0x2F3C, 0x4, 0x50F, 0x7000, 0xA82A);
- extern pascal ComponentResult MediaGetTrackOpaque(MediaHandler mh, Boolean *trackIsOpaque)
- FIVEWORDINLINE(0x2F3C, 0x4, 0x510, 0x7000, 0xA82A);
- extern pascal ComponentResult MediaSetGraphicsMode(MediaHandler mh, long mode, const RGBColor *opColor)
- FIVEWORDINLINE(0x2F3C, 0x8, 0x511, 0x7000, 0xA82A);
- extern pascal ComponentResult MediaGetGraphicsMode(MediaHandler mh, long *mode, RGBColor *opColor)
- FIVEWORDINLINE(0x2F3C, 0x8, 0x512, 0x7000, 0xA82A);
- extern pascal ComponentResult MediaGSetVolume(MediaHandler mh, short volume)
- FIVEWORDINLINE(0x2F3C, 0x2, 0x513, 0x7000, 0xA82A);
- extern pascal ComponentResult MediaSetSoundBalance(MediaHandler mh, short balance)
- FIVEWORDINLINE(0x2F3C, 0x2, 0x514, 0x7000, 0xA82A);
- extern pascal ComponentResult MediaGetSoundBalance(MediaHandler mh, short *balance)
- FIVEWORDINLINE(0x2F3C, 0x4, 0x515, 0x7000, 0xA82A);
- extern pascal ComponentResult MediaGetNextBoundsChange(MediaHandler mh, TimeValue *when)
- FIVEWORDINLINE(0x2F3C, 0x4, 0x516, 0x7000, 0xA82A);
- extern pascal ComponentResult MediaGetSrcRgn(MediaHandler mh, RgnHandle rgn, TimeValue atMediaTime)
- FIVEWORDINLINE(0x2F3C, 0x8, 0x517, 0x7000, 0xA82A);
- extern pascal ComponentResult MediaPreroll(MediaHandler mh, TimeValue time, Fixed rate)
- FIVEWORDINLINE(0x2F3C, 0x8, 0x518, 0x7000, 0xA82A);
- extern pascal ComponentResult MediaSampleDescriptionChanged(MediaHandler mh, long index)
- FIVEWORDINLINE(0x2F3C, 0x4, 0x519, 0x7000, 0xA82A);
- extern pascal ComponentResult MediaHasCharacteristic(MediaHandler mh, OSType characteristic, Boolean *hasIt)
- FIVEWORDINLINE(0x2F3C, 0x8, 0x51A, 0x7000, 0xA82A);
- extern pascal ComponentResult MediaGetOffscreenBufferSize(MediaHandler mh, Rect *bounds, short depth, CTabHandle ctab)
- FIVEWORDINLINE(0x2F3C, 0xA, 0x51B, 0x7000, 0xA82A);
- extern pascal ComponentResult MediaSetHints(MediaHandler mh, long hints)
- FIVEWORDINLINE(0x2F3C, 0x4, 0x51C, 0x7000, 0xA82A);
- extern pascal ComponentResult MediaGetName(MediaHandler mh, Str255 name, long requestedLanguage, long *actualLanguage)
- FIVEWORDINLINE(0x2F3C, 0xC, 0x51D, 0x7000, 0xA82A);
- extern pascal ComponentResult MediaForceUpdate(MediaHandler mh, long forceUpdateFlags)
- FIVEWORDINLINE(0x2F3C, 0x4, 0x51E, 0x7000, 0xA82A);
- extern pascal ComponentResult MediaGetDrawingRgn(MediaHandler mh, RgnHandle *partialRgn)
- FIVEWORDINLINE(0x2F3C, 0x4, 0x521, 0x7000, 0xA82A);
-
- enum {
- kMediaInitializeSelect = 0x501,
- kMediaSetHandlerCapabilitiesSelect = 0x502,
- kMediaIdleSelect = 0x503,
- kMediaGetMediaInfoSelect = 0x504,
- kMediaPutMediaInfoSelect = 0x505,
- kMediaSetActiveSelect = 0x506,
- kMediaSetRateSelect = 0x507,
- kMediaGGetStatusSelect = 0x508,
- kMediaTrackEditedSelect = 0x509,
- kMediaSetMediaTimeScaleSelect = 0x50A,
- kMediaSetMovieTimeScaleSelect = 0x50B,
- kMediaSetGWorldSelect = 0x50C,
- kMediaSetDimensionsSelect = 0x50D,
- kMediaSetClipSelect = 0x50E,
- kMediaSetMatrixSelect = 0x50F,
- kMediaGetTrackOpaqueSelect = 0x510,
- kMediaSetGraphicsModeSelect = 0x511,
- kMediaGetGraphicsModeSelect = 0x512,
- kMediaGSetVolumeSelect = 0x513,
- kMediaSetSoundBalanceSelect = 0x514,
- kMediaGetSoundBalanceSelect = 0x515,
- kMediaGetNextBoundsChangeSelect = 0x516,
- kMediaGetSrcRgnSelect = 0x517,
- kMediaPrerollSelect = 0x518,
- kMediaSampleDescriptionChangedSelect = 0x519,
- kMediaHasCharacteristicSelect = 0x51A,
- kMediaGetOffscreenBufferSizeSelect = 0x51B,
- kMediaSetHintsSelect = 0x51C,
- kMediaGetNameSelect = 0x51D,
- kMediaForceUpdateSelect = 0x51E,
- kMediaGetDrawingRgnSelect = 0x521
- };
-
-
- #if PRAGMA_IMPORT_SUPPORTED
- #pragma import off
- #endif
-
- #if PRAGMA_ALIGN_SUPPORTED
- #pragma options align=reset
- #endif
-
- #ifdef __cplusplus
- }
- #endif
-
- #endif /* __MEDIAHANDLERS__ */
-